Skip to content

Conversation

@jGleitz
Copy link
Owner

@jGleitz jGleitz commented Jun 10, 2025

No description provided.

@jGleitz jGleitz requested a review from Copilot June 10, 2025 11:27
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds new file system path notations and updates existing notation regex patterns to better handle leading delimiters, while also updating test cases and notation implementations.

  • Introduces UnixPath and WindowsPath notation implementations and corresponding tests
  • Updates ScreamingSnakeCase and SnakeCase regex patterns with negative lookbehind
  • Revises JavaNotations by removing the "data" modifier from JavaTypeName, and adjusts BaseStringNotation to include empty parts

Reviewed Changes

Copilot reviewed 6 out of 6 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/test/kotlin/NotationsTest.kt Updated test cases for underscore-prefixed words in snake case notations
src/test/kotlin/FileSystemNotationsTest.kt Added new tests for Unix and Windows path notations
src/main/kotlin/Notations.kt Updated regex patterns in ScreamingSnakeCase and SnakeCase
src/main/kotlin/JavaNotations.kt Changed JavaTypeName from a data object to a standard object
src/main/kotlin/FileSystemNotations.kt Introduced new notations for Unix and Windows file system paths
src/main/kotlin/BaseStringNotation.kt Modified parsing behavior to include empty parts, facilitating absolute path support
Comments suppressed due to low confidence (2)

src/main/kotlin/BaseStringNotation.kt:15

  • The removal of the isNotBlank filter in the split operation changes the behavior by including empty parts (used for absolute paths). Consider updating the documentation to clarify this design decision and its implications.
Word(sourceString.split(splitAt).asSequence().mapIndexed(::transformPartAfterParse))

src/main/kotlin/JavaNotations.kt:14

  • [nitpick] The change from 'data object' to 'object' for JavaTypeName is noted; it would be beneficial to include a comment explaining the rationale behind this change to aid future maintenance.
object JavaTypeName : StringNotation by UpperCamelCase {

@jGleitz jGleitz force-pushed the file-system-notation branch from 3fc9495 to 6e42451 Compare June 10, 2025 11:31
@jGleitz jGleitz force-pushed the file-system-notation branch from 6e42451 to 099fd18 Compare June 10, 2025 11:33
@sonarqubecloud
Copy link

@jGleitz jGleitz enabled auto-merge (rebase) June 10, 2025 11:34
@jGleitz jGleitz merged commit 71b1c22 into main Jun 10, 2025
7 checks passed
@jGleitz jGleitz deleted the file-system-notation branch June 10, 2025 11:34
@jGleitz
Copy link
Owner Author

jGleitz commented Jun 10, 2025

🎉 This PR is included in version 1.5.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants